Skip to content

Add terse links for gradient-based calculation using graph-based collection definition#176

Open
cfrontin wants to merge 14 commits intoNLRWindSystems:developfrom
cfrontin:feature/terse_links_for_orbit
Open

Add terse links for gradient-based calculation using graph-based collection definition#176
cfrontin wants to merge 14 commits intoNLRWindSystems:developfrom
cfrontin:feature/terse_links_for_orbit

Conversation

@cfrontin
Copy link
Collaborator

@cfrontin cfrontin commented Feb 3, 2026

No description provided.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request converts the collection system design representation from a discrete graph variable to a continuous terse_links array to enable gradient-based optimization. The terse_links format is a compact integer array encoding the electrical connection topology as a tree structure, where each turbine's connection target is specified by an array index.

Changes:

  • Changed terse_links from a discrete output to a continuous output in collection system components to support gradient computation
  • Updated the ORBIT wrapper to accept terse_links instead of graph and reconstruct the graph internally
  • Added partial derivative declarations indicating that terse_links is independent of input positions

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
ard/cost/orbit_wrap.py Modified to accept terse_links input instead of discrete graph, added logic to reconstruct graph from terse_links, and declared partials for gradient calculations
ard/collection/optiwindnet_wrap.py Moved terse_links from discrete output to continuous output and added partial declarations marking it as independent of position inputs
ard/collection/templates.py Updated template to define terse_links as a continuous output instead of discrete output
test/ard/unit/cost/test_orbit_wrap.py Updated test connections from graph to terse_links
test/ard/unit/collection/test_templates.py Updated test assertions to check for terse_links in continuous outputs instead of discrete outputs
test/ard/unit/collection/test_optiwindnet.py Updated test assertions to check for terse_links in continuous outputs instead of discrete outputs
README.md Updated documentation URLs to point to NLRWindSystems GitHub organization

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants